/**
 * 此文件仅用于测试支付，正式环境请从后台获取支付参数。
 */
// 在下面设置appid
import { md5 } from './md5';
export const appid = '201906155432'; //
// 特别注意：此项设置应该仅供测试，生产环境下请在后端完成签名，切忌在小程序内暴露商户密钥
export const secret = '358bae72d604c54aab5a3bba13b6b1a2'; //

export function getOrderNo(str) {
  let outTradeNo = ''; //订单号
  for (
    var i = 0;
    i < 6;
    i++ //6位随机数，用以加在时间戳后面。
  ) {
    outTradeNo += Math.floor(Math.random() * 10);
  }
  outTradeNo = str + new Date().getTime() + outTradeNo; //时间戳，用来生成订单号。
  return outTradeNo;
}

export function wxPaySign(params, key) {
  const paramsArr = Object.keys(params);
  paramsArr.sort();
  const stringArr = [];
  paramsArr.map(key => {
    stringArr.push(key + '=' + params[key]);
  });
  // 最后加上 商户Key
  let paramStr = stringArr.join('&');
  paramStr = paramStr + key;
  return md5(paramStr).toString().toLowerCase();
}
